Parallel One-Sided Block Jacobi SVD Algorithm: II. Implementation
نویسندگان
چکیده
This technical report is devoted to the description of implementation details of the accelerated parallel one-sided block Jacobi SVD algorithm, whose analysis and design was described in [21]. We provide discuss a suitable data layout for a parallel implementation of the algorithm on a parallel computer with distributed memory. This discussion is complicated by the fact that different computational phases can have different optimal data layouts. We discuss in some detail the optimal data layout for the matrix pre-processing (QR factorization with column pivoting), and then our block-column-oriented data layout for the SVD computation. It turns out that the transition between both layouts is needed in the form of an (optimal) communication algorithm whose main features are described in detail. Another important issue is a communication-efficient adaptation of the dynamic ordering from the two-sided block Jacobi algorithm to the one-sided one.
منابع مشابه
Dynamic Ordering for the Parallel One-sided Block-jacobi Svd Algorithm
The serial Jacobi algorithm (either one-sided or two-sided) for the computation of a singular value decomposition (SVD) of a general matrix has excellent numerical properties and parallelization potential, but it is considered to be the slowest method for computing the SVD. Even its parallelization with some parallel cyclic (static) ordering of subproblems does not lead to much improvement when...
متن کاملParallel Code for One-sided Jacobi-Method
One sided block Jacobi algorithm for the singular value decomposition (SVD) of matrix can be a method of choice to compute SVD efficiently and accurately in parallel. A given matrix is logically partitioned into block columns and is subjected to an iteration process. In each iteration step, for given two block columns, their Gram matrix is generated, its symmetric eigenvalue decomposition (EVD)...
متن کاملParallel One - Sided Block - Jacobi Svd Algorithm
A new dynamic ordering is presented for the parallel one-sided block Jacobi SVD algorithm. Similarly to the two-sided variant, which has been analyzed and implemented in last 10 years, the dynamic ordering takes into account the actual status of a matrix—this time of its block columns with respect to their mutual orthogonality. Using p processors, in each parallel iteration step the p mostly in...
متن کاملGeneralization of the Dynamic Ordering for the One-Sided Block Jacobi SVD Algorithm: II. Implementation
We have designed, implemented and tested (by simulation on a serial computer) the new dynamic ordering for the parallel one-sided block-Jacobi SVD algorithm. Our idea is based on the estimation of the cosines of principal angles between two block columns X and Y of the same width without explicitly forming the matrix product XY (or Y X) and computing its SVD. Instead, we propose to use a fixed ...
متن کاملGeneralization of the Dynamic Ordering for the One-Sided Block Jacobi SVD Algorithm: I. Analysis and Design
The efficiency of the one-sided parallel block-Jacobi algorithm for computation of the singular value decomposition (SVD) of a general matrix A ∈ Rm×n, m ≥ n, depends–besides some numerical tricks that speed-up the convergence–crucially on the parallel ordering of subproblems, which are to be solved in each parallel iteration step. We discuss in detail possible generalizations of the so-called ...
متن کامل